home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 3 / Info_Mac_1994-01.iso / Text Processing / Alpha 5.63 / Tcl / SystemCode / menus.tcl < prev    next >
Encoding:
Text File  |  1993-10-14  |  3.5 KB  |  212 lines  |  [TEXT/ALFA]

  1. # My menus.        
  2.  
  3. menu    -n Utilities {
  4.         "longMenus"
  5.         {menu -n fileUtils {
  6.             "insertFile…"
  7.             "(-"
  8.             "fileRemove…"
  9.             "fileInfo/=…"}}
  10.         {menu -n fileSets -m -p changeFileSet ""}
  11.         {menu -n Clips {
  12.             "copyNamedClipboard…"
  13.             "cutNamedClipboard…"
  14.             "pasteNamedClipboard…"}}
  15.         "(-"
  16.         {menu -n arrange {
  17.             "vertically^1"
  18.             "horizontally^2"
  19.             "tiled^3"
  20.             "overlay^4"}}
  21.         "zoom//"}
  22.  
  23.  
  24. menu    -n "Utils" {
  25.         "shortMenus"
  26.         {menu -n Flags -p editFlag {}}
  27.         {menu -n Vars -p editVar {}}
  28.         {menu -n fileUtils {
  29.             "insertFile…"
  30.             "fileRemove…"
  31.             "fileInfo…"
  32.             "wordCount"}}
  33.         "(-"
  34.         {menu -n fileSets ""}
  35.         "createFileset…"
  36.         "dumpFileset…"
  37.         "findTag"
  38.         "createTagFile"
  39.         "(-"
  40.         "/'execute…"
  41.         "(-"
  42.         "pushMark"
  43.         "popMark"
  44.         "prevFunc"
  45.         "nextFunc"
  46.         "(-"
  47.         "startKeyboardMacro"
  48.         "endKeyboardMacro"
  49.         "executeKeyboardMacro"
  50.         "dumpMacro…"}
  51.  
  52. proc helpMenu {menu item} {
  53.     global HOME
  54.     edit -r -m $HOME:Help:$item
  55. }
  56.  
  57. proc strip {arg} {
  58.     if {[regsub -all {\\([][\{\}])} $arg {\1} v]} {return $v}
  59.     return $arg
  60. }
  61.  
  62. # Boy, this is ugly. 'files' comes w/ backquotes from glob, must get rid 
  63. # of them. 'temp' arrives w/o quotes before chars that 'regsub' will 
  64. # interpret as special regular expression characters.
  65. set temp "$HOME:Help:"
  66. if {![catch {glob $temp*} files]} {
  67.     if {![regsub -all [quoteExpr2 $temp] [strip $files] "" temp2]} {
  68.         alertnote "Trouble building help menu."
  69.         menu -n Help ""
  70.     } else {
  71.         menu -n Help -m -p "helpMenu" $temp2
  72.     }
  73. }    
  74. catch {unset temp temp2 files}
  75.  
  76.  
  77. proc menuModeProc {menu item} {
  78.     newMode $item
  79. }
  80.  
  81. menu    -n Misc {
  82.         "pastePop/."
  83.         "(-"
  84.         "listBindings"
  85.         "describeBinding…"
  86.         "insertPathName…"
  87.         "setFontsTabs…"
  88.         "(-"
  89.         "copyNamedClipboard…"
  90.         "cutNamedClipboard…"
  91.         "pasteNamedClipboard…"
  92.         "(-"
  93.         {menu -n asciiEtc {
  94.             "keyCode…"
  95.             "keyAscii…"
  96.             "getAscii…"
  97.             "insertAscii…"}}
  98.         {menu -n Modes -m -p menuModeProc {
  99.             "/,C"
  100.             "C++"
  101.             "Csh"
  102.             "Fort"
  103.             "MPW"
  104.             "Tcl"
  105.             "Tex"
  106.             "Text"}}
  107.         {menu -m -n switchTo -p switchProc {
  108.             "/`MacMiNT"
  109.             "THINK Project Manager"
  110.             "MPW Shell"
  111.             "Versaterm PRO"
  112.             "MacLayers"}}
  113.         "toolserverShell"
  114.         "(-"
  115.         "loadElectricAlias"
  116. }
  117.  
  118. proc switchProc {menu name} {
  119.     switchTo $name
  120. }
  121.         
  122.  
  123. menu    -n Convert {
  124.         "fillRegion"
  125.         "fillParagraph"
  126.         "wrapRegion"
  127.         "wrapParagraph"
  128.         "sortLines"
  129.         "matchingLines"
  130.         "(-"
  131.         "zapInvisibles"
  132.         "tabsToSpaces"
  133.         "spacesToTabs"
  134.         "(-"
  135.         {menu    -n Strings {
  136.             "insertPrefix"
  137.             "insertSuffix"
  138.             "removePrefix"
  139.             "removeSuffix"
  140.             "setPrefix…"
  141.             "setSuffix…"}}
  142.         {menu     -n Colors {
  143.             "foreColor…"
  144.             "backColor…"
  145.             "dumpColors…"}}
  146.         "(-"
  147.         "ParagraphToLine"
  148.         "LineToParagraph"}
  149.  
  150.  
  151. menu -n Wins -p menuWin {
  152.         {menu -n arrange {
  153.             "vertically^1"
  154.             "horizontally^2"
  155.             "tiled^3"
  156.             "overlay^4"}}
  157.         "//zoom"
  158.         "iconify"
  159.         "(-"
  160.         "nextWindow"
  161.         "swapWithNext"
  162.         "chooseAWindow/;"
  163.         "prevWindow"
  164.         "closeAll"
  165.         "saveAll"
  166.         "(-"
  167. }
  168.  
  169.  
  170. # We may be reloading, so add whatever windows we have
  171. if {[info exists winNameToNum]} {
  172.     set nms [array names winNameToNum]
  173.     foreach name $nms {
  174.         if {$fullNames} {
  175.             set item $name
  176.         } else {
  177.             regexp {[^:]*$} $name item
  178.         }
  179.         set num $winNameToNum($name)
  180.         if {$num < 10}     {
  181.             addMenuItem -m Wins /$num$item
  182.         } else {
  183.             addMenuItem -m Wins $item
  184.         }
  185.     }
  186. }
  187.  
  188. insertMenu "Utils"
  189. insertMenu "Misc"
  190. enableMenuItem Misc pasteNamedClipboard off
  191. insertMenu "Convert"
  192. insertMenu "Help"
  193. insertMenu "Wins"
  194.  
  195. proc shortMenus {} {
  196.     removeMenu "Utils"
  197.     removeMenu "Misc"
  198.     removeMenu "Convert"
  199.     removeMenu "Wins"
  200.     insertMenu "Utilities"
  201. }
  202.  
  203. proc longMenus {} {
  204.     removeMenu "Utilities"
  205.     insertMenu "Utils"
  206.     insertMenu "Misc"
  207.     insertMenu "Convert"
  208.     insertMenu "Wins"
  209. }
  210.  
  211.  
  212.